Home | History | Annotate | Download | only in render
      1 // Copyright 2016 PDFium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
      6 
      7 #ifndef CORE_FPDFAPI_RENDER_CPDF_RENDEROPTIONS_H_
      8 #define CORE_FPDFAPI_RENDER_CPDF_RENDEROPTIONS_H_
      9 
     10 #include "core/fpdfdoc/cpdf_occontext.h"
     11 #include "core/fxcrt/cfx_retain_ptr.h"
     12 #include "core/fxcrt/fx_system.h"
     13 #include "core/fxge/fx_dib.h"
     14 
     15 #define RENDER_COLOR_NORMAL 0
     16 #define RENDER_COLOR_GRAY 1
     17 #define RENDER_COLOR_TWOCOLOR 2
     18 #define RENDER_COLOR_ALPHA 3
     19 #define RENDER_CLEARTYPE 0x00000001
     20 #define RENDER_PRINTGRAPHICTEXT 0x00000002
     21 #define RENDER_FORCE_DOWNSAMPLE 0x00000004
     22 #define RENDER_PRINTPREVIEW 0x00000008
     23 #define RENDER_BGR_STRIPE 0x00000010
     24 #define RENDER_NO_NATIVETEXT 0x00000020
     25 #define RENDER_FORCE_HALFTONE 0x00000040
     26 #define RENDER_RECT_AA 0x00000080
     27 #define RENDER_FILL_FULLCOVER 0x00000100
     28 #define RENDER_PRINTIMAGETEXT 0x00000200
     29 #define RENDER_OVERPRINT 0x00000400
     30 #define RENDER_THINLINE 0x00000800
     31 #define RENDER_NOTEXTSMOOTH 0x10000000
     32 #define RENDER_NOPATHSMOOTH 0x20000000
     33 #define RENDER_NOIMAGESMOOTH 0x40000000
     34 #define RENDER_LIMITEDIMAGECACHE 0x80000000
     35 
     36 class CPDF_RenderOptions {
     37  public:
     38   CPDF_RenderOptions();
     39   CPDF_RenderOptions(const CPDF_RenderOptions& rhs);
     40   ~CPDF_RenderOptions();
     41 
     42   FX_ARGB TranslateColor(FX_ARGB argb) const;
     43 
     44   int m_ColorMode;
     45   FX_COLORREF m_BackColor;
     46   FX_COLORREF m_ForeColor;
     47   uint32_t m_Flags;
     48   int m_Interpolation;
     49   uint32_t m_AddFlags;
     50   uint32_t m_dwLimitCacheSize;
     51   int m_HalftoneLimit;
     52   bool m_bDrawAnnots;
     53   CFX_RetainPtr<CPDF_OCContext> m_pOCContext;
     54 };
     55 
     56 #endif  // CORE_FPDFAPI_RENDER_CPDF_RENDEROPTIONS_H_
     57