Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-12-11 10:26:10

0001 //========================================================================
0002 //
0003 // ImgWriter.h
0004 //
0005 // This file is licensed under the GPLv2 or later
0006 //
0007 // Copyright (C) 2009 Stefan Thomas <thomas@eload24.com>
0008 // Copyright (C) 2009, 2011, 2018, 2022 Albert Astals Cid <aacid@kde.org>
0009 // Copyright (C) 2010 Adrian Johnson <ajohnson@redneon.com>
0010 // Copyright (C) 2010 Brian Cameron <brian.cameron@oracle.com>
0011 // Copyright (C) 2011 Thomas Freitag <Thomas.Freitag@alfa.de>
0012 //
0013 //========================================================================
0014 
0015 #ifndef IMGWRITER_H
0016 #define IMGWRITER_H
0017 
0018 #include "poppler_private_export.h"
0019 
0020 #include <cstdio>
0021 
0022 class POPPLER_PRIVATE_EXPORT ImgWriter
0023 {
0024 public:
0025     ImgWriter() = default;
0026     ImgWriter(const ImgWriter &) = delete;
0027     ImgWriter &operator=(const ImgWriter &other) = delete;
0028 
0029     virtual ~ImgWriter();
0030     virtual bool init(FILE *f, int width, int height, double hDPI, double vDPI) = 0;
0031 
0032     virtual bool writePointers(unsigned char **rowPointers, int rowCount) = 0;
0033     virtual bool writeRow(unsigned char **row) = 0;
0034 
0035     virtual bool close() = 0;
0036     virtual bool supportCMYK() { return false; }
0037 };
0038 
0039 #endif