当前位置: 代码迷 >> 综合 >> 写一个管理Svg图片的类
  详细解决方案

写一个管理Svg图片的类

热度:77   发布时间:2024-03-09 12:01:10.0

//还没想好怎么写,先把声明写了,想好再加上去

#pragma once
#include <QtCore/qglobal.h>
#include <QPainter>
#include <QSvgRenderer>
#include <QIcon>
#include <QPixmap>
class  ManagementSvgRenderer
{
public:
    ManagermentSvgRenderer();
    ManagermentSvgRenderer(QString sfileName);
    ~ManagermentSvgRenderer();

    void loadPicture(QString sPictureName);
    QSize defaultSize();

    QPixmap RendererToPixmap(QSize pixMapSize = QSize(0, 0), QSizeF svgSizeF = QSizeF(0, 0), Qt::AlignmentFlag flag = Qt::AlignCenter);

    QIcon RendererToIcon(QSize iconSize = QSize(0, 0), QSizeF svgSizeF = QSizeF(0, 0), Qt::AlignmentFlag flag = Qt::AlignCenter);

    //处理图片的灰度
    QPixmap CreateDisabledPixmap(const QString& file);
     QPixmap CreateDisabledPixmap(const QPixmap& originPixmap);
     QImage CreateDisabledQImage(const QImage& originImage);
    bool  IsSvgPicture(QString sImageName);

private:
    QString m_strFileName;
    bool m_bIsSvg;
    QSvgRenderer m_svgRender;
};

 

  相关解决方案