LibreOffice Module vcl (master) 1
Classes | Enumerations | Functions | Variables
vcl::pdf Namespace Reference

Classes

struct  BitmapEmit
 
struct  BitmapID
 
struct  BuildinFont
 
class  BuildinFontFace
 
class  BuildinFontInstance
 
struct  ColorLayer
 
struct  EmbedFont
 
struct  FontEmit
 
struct  FontSubset
 
struct  Glyph
 
class  GlyphEmit
 
struct  GradientEmit
 
struct  GraphicsState
 
struct  JPGEmit
 
class  Matrix3
 
struct  PDFAnnotation
 
struct  PDFAnnotationMarker
 
struct  PDFAnnotationMarkerCircle
 
struct  PDFAnnotationMarkerHighlight
 
struct  PDFAnnotationMarkerInk
 
struct  PDFAnnotationMarkerLine
 
struct  PDFAnnotationMarkerPolygon
 
struct  PDFAnnotationMarkerSquare
 
struct  PDFDest
 
struct  PDFDocumentAttachedFile
 
struct  PDFEmbeddedFile
 A PDF embedded file. More...
 
struct  PDFGlyph
 
class  PDFium
 
class  PDFiumAnnotation
 
class  PDFiumBitmap
 
class  PDFiumDocument
 
struct  PDFiumLibrary
 
class  PDFiumPage
 
class  PDFiumPageObject
 
class  PDFiumPathSegment
 
class  PDFiumSearchHandle
 
class  PDFiumSignature
 Represents one digital signature, as exposed by PDFium. More...
 
class  PDFiumTextPage
 
struct  PDFLink
 
struct  PDFNamedDest
 
struct  PDFNoteEntry
 
struct  PDFOutlineEntry
 
struct  PDFPage
 
struct  PDFPopupAnnotation
 
struct  PDFScreen
 A PDF Screen annotation. More...
 
struct  PDFStructureAttribute
 
struct  PDFStructureElement
 
struct  PDFStructureElementKid
 
struct  PDFWidget
 
struct  ReferenceXObjectEmit
 Contains information to emit a reference XObject. More...
 
struct  ResourceDict
 
struct  StreamRedirect
 
struct  TilingEmit
 
struct  TransparencyEmit
 
class  XmpMetadata
 

Enumerations

enum class  GraphicsStateUpdateFlags {
  Font = 0x0001 ,
  MapMode = 0x0002 ,
  LineColor = 0x0004 ,
  FillColor = 0x0008 ,
  ClipRegion = 0x0040 ,
  LayoutMode = 0x0100 ,
  TransparentPercent = 0x0200 ,
  DigitLanguage = 0x0400 ,
  All = 0x077f
}
 
enum class  Mode {
  DEFAULT ,
  NOWRITE
}
 
enum class  ResourceKind {
  XObject ,
  ExtGState ,
  Shading ,
  Pattern
}
 
enum class  PDFAnnotAActionType {
  KeyStroke = 12 ,
  Format = 13 ,
  Validate = 14 ,
  Calculate = 15
}
 
enum class  PDFTextMarkerType {
  Highlight ,
  Underline ,
  Squiggly ,
  StrikeOut
}
 
enum class  PDFAnnotationSubType {
  Unknown = 0 ,
  Text = 1 ,
  Link = 2 ,
  FreeText = 3 ,
  Line = 4 ,
  Square = 5 ,
  Circle = 6 ,
  Polygon = 7 ,
  Polyline = 8 ,
  Highlight = 9 ,
  Underline = 10 ,
  Squiggly = 11 ,
  Strikeout = 12 ,
  Stamp = 13 ,
  Caret = 14 ,
  Ink = 15 ,
  Popup = 16 ,
  FileAttachment = 17 ,
  Sound = 18 ,
  Movie = 19 ,
  Widget = 20 ,
  Screen = 21 ,
  Printermark = 22 ,
  Trapnet = 23 ,
  Watermark = 24 ,
  Threed = 25 ,
  Richmedia = 26 ,
  XFAWidget = 27 ,
  Redact = 28
}
 
enum class  PDFBitmapType {
  Unknown = 0 ,
  Gray = 1 ,
  BGR = 2 ,
  BGRx = 3 ,
  BGRA = 4
}
 
enum class  PDFErrorType {
  Success = 0 ,
  Unknown = 1 ,
  File = 2 ,
  Format = 3 ,
  Password = 4 ,
  Security = 5 ,
  Page = 6
}
 
enum class  PDFFillMode {
  None = 0 ,
  Alternate = 1 ,
  Winding = 2
}
 
enum class  PDFFindFlags : sal_uInt32 {
  MatchCase = 0x00000001 ,
  MatchWholeWord = 0x00000002 ,
  Consecutive = 0x00000004
}
 
enum class  PDFFormFieldType {
  Unknown = 0 ,
  PushButton = 1 ,
  CheckBox = 2 ,
  RadioButton = 3 ,
  ComboBox = 4 ,
  ListBox = 5 ,
  TextField = 6 ,
  Signature = 7
}
 
enum class  PDFObjectType {
  Unknown = 0 ,
  Boolean = 1 ,
  Number = 2 ,
  String = 3 ,
  Name = 4 ,
  Array = 5 ,
  Dictionary = 6 ,
  Stream = 7 ,
  Nullobj = 8 ,
  Reference = 9
}
 
enum class  PDFPageObjectType {
  Unknown = 0 ,
  Text = 1 ,
  Path = 2 ,
  Image = 3 ,
  Shading = 4 ,
  Form = 5
}
 
enum class  PDFSegmentType {
  Unknown = -1 ,
  Lineto = 0 ,
  Bezierto = 1 ,
  Moveto = 2
}
 
enum class  PDFTextRenderMode {
  Unknown = -1 ,
  Fill = 0 ,
  Stroke = 1 ,
  FillStroke = 2 ,
  Invisible = 3 ,
  FillClip = 4 ,
  StrokeClip = 5 ,
  FillStrokeClip = 6 ,
  Clip = 7
}
 

Functions

bool isCompatible (SvStream &rInStream, sal_uInt64 nPos, sal_uInt64 nSize)
 Decide if PDF data is old enough to be compatible. More...
 
bool convertToHighestSupported (SvStream &rInStream, SvStream &rOutStream)
 Converts to highest supported format version (1.6). More...
 
bool getCompatibleStream (SvStream &rInStream, SvStream &rOutStream)
 Takes care of transparently downgrading the version of the PDF stream in case it's too new for our PDF export. More...
 
BinaryDataContainer createBinaryDataContainer (SvStream &rStream)
 
double getDefaultPdfResolutionDpi ()
 Get the default PDF rendering resolution in DPI. More...
 
OUString convertPdfDateToISO8601 (std::u16string_view rInput)
 
double pointToPixel (const double fPoint, const double fResolutionDPI)
 Convert to inch, then assume 96 DPI. More...
 

Variables

constexpr sal_Int32 g_nInheritedPageWidth = 595
 
constexpr sal_Int32 g_nInheritedPageHeight = 842
 
constexpr OStringLiteral constDictionaryKeyTitle = "T"
 
constexpr OStringLiteral constDictionaryKeyContents = "Contents"
 
constexpr OStringLiteral constDictionaryKeyPopup = "Popup"
 
constexpr OStringLiteral constDictionaryKeyModificationDate = "M"
 
constexpr OStringLiteral constDictionaryKeyInteriorColor = "IC"
 

Enumeration Type Documentation

◆ GraphicsStateUpdateFlags

Enumerator
Font 
MapMode 
LineColor 
FillColor 
ClipRegion 
LayoutMode 
TransparentPercent 
DigitLanguage 
All 

Definition at line 85 of file pdfwriter_impl.hxx.

◆ Mode

enum class vcl::pdf::Mode
strong
Enumerator
DEFAULT 
NOWRITE 

Definition at line 677 of file pdfwriter_impl.hxx.

◆ PDFAnnotAActionType

enum class vcl::pdf::PDFAnnotAActionType
strong
Enumerator
KeyStroke 
Format 
Validate 
Calculate 

Definition at line 15 of file PDFAnnotAActionType.hxx.

◆ PDFAnnotationSubType

enum class vcl::pdf::PDFAnnotationSubType
strong
Enumerator
Unknown 
Text 
Link 
FreeText 
Line 
Square 
Circle 
Polygon 
Polyline 
Highlight 
Underline 
Squiggly 
Strikeout 
Stamp 
Caret 
Ink 
Popup 
FileAttachment 
Sound 
Movie 
Widget 
Screen 
Printermark 
Trapnet 
Watermark 
Threed 
Richmedia 
XFAWidget 
Redact 

Definition at line 15 of file PDFAnnotationSubType.hxx.

◆ PDFBitmapType

enum class vcl::pdf::PDFBitmapType
strong
Enumerator
Unknown 
Gray 
BGR 
BGRx 
BGRA 

Definition at line 15 of file PDFBitmapType.hxx.

◆ PDFErrorType

enum class vcl::pdf::PDFErrorType
strong
Enumerator
Success 
Unknown 
File 
Format 
Password 
Security 
Page 

Definition at line 15 of file PDFErrorType.hxx.

◆ PDFFillMode

enum class vcl::pdf::PDFFillMode
strong
Enumerator
None 
Alternate 
Winding 

Definition at line 15 of file PDFFillMode.hxx.

◆ PDFFindFlags

enum class vcl::pdf::PDFFindFlags : sal_uInt32
strong
Enumerator
MatchCase 
MatchWholeWord 
Consecutive 

Definition at line 18 of file PDFFindFlags.hxx.

◆ PDFFormFieldType

enum class vcl::pdf::PDFFormFieldType
strong
Enumerator
Unknown 
PushButton 
CheckBox 
RadioButton 
ComboBox 
ListBox 
TextField 
Signature 

Definition at line 15 of file PDFFormFieldType.hxx.

◆ PDFObjectType

enum class vcl::pdf::PDFObjectType
strong
Enumerator
Unknown 
Boolean 
Number 
String 
Name 
Array 
Dictionary 
Stream 
Nullobj 
Reference 

Definition at line 15 of file PDFObjectType.hxx.

◆ PDFPageObjectType

enum class vcl::pdf::PDFPageObjectType
strong
Enumerator
Unknown 
Text 
Path 
Image 
Shading 
Form 

Definition at line 15 of file PDFPageObjectType.hxx.

◆ PDFSegmentType

enum class vcl::pdf::PDFSegmentType
strong
Enumerator
Unknown 
Lineto 
Bezierto 
Moveto 

Definition at line 15 of file PDFSegmentType.hxx.

◆ PDFTextMarkerType

enum class vcl::pdf::PDFTextMarkerType
strong
Enumerator
Highlight 
Underline 
Squiggly 
StrikeOut 

Definition at line 56 of file PDFAnnotationMarker.hxx.

◆ PDFTextRenderMode

enum class vcl::pdf::PDFTextRenderMode
strong
Enumerator
Unknown 
Fill 
Stroke 
FillStroke 
Invisible 
FillClip 
StrokeClip 
FillStrokeClip 
Clip 

Definition at line 15 of file PDFTextRenderMode.hxx.

◆ ResourceKind

enum class vcl::pdf::ResourceKind
strong
Enumerator
XObject 
ExtGState 
Shading 
Pattern 

Definition at line 19 of file ResourceDict.hxx.

Function Documentation

◆ convertPdfDateToISO8601()

VCL_DLLPUBLIC OUString vcl::pdf::convertPdfDateToISO8601 ( std::u16string_view  rInput)

Definition at line 15 of file PDFiumTools.cxx.

References prefix, and u.

◆ convertToHighestSupported()

bool vcl::pdf::convertToHighestSupported ( SvStream rInStream,
SvStream rOutStream 
)

Converts to highest supported format version (1.6).

Converts to highest supported format version (currently 1.6).

Usually used to deal with missing referenced objects in source pdf stream.

Usually used to deal with missing referenced objects in the source pdf stream.

Definition at line 43 of file pdfcompat.cxx.

References vcl::pdf::PDFiumLibrary::get(), SvMemoryStream::GetData(), SvMemoryStream::GetSize(), SvStream::good(), nPos, SvStream::Seek(), STREAM_SEEK_TO_BEGIN, STREAM_SEEK_TO_END, and SvStream::WriteStream().

Referenced by getCompatibleStream(), and vcl::filter::PDFDocument::ReadWithPossibleFixup().

◆ createBinaryDataContainer()

BinaryDataContainer vcl::pdf::createBinaryDataContainer ( SvStream rStream)

◆ getCompatibleStream()

bool vcl::pdf::getCompatibleStream ( SvStream rInStream,
SvStream rOutStream 
)

Takes care of transparently downgrading the version of the PDF stream in case it's too new for our PDF export.

Definition at line 78 of file pdfcompat.cxx.

References convertToHighestSupported(), SvStream::good(), isCompatible(), nPos, SvStream::Seek(), STREAM_SEEK_TO_BEGIN, STREAM_SEEK_TO_END, and SvStream::WriteStream().

Referenced by createBinaryDataContainer().

◆ getDefaultPdfResolutionDpi()

double vcl::pdf::getDefaultPdfResolutionDpi ( )

Get the default PDF rendering resolution in DPI.

Definition at line 20 of file PdfConfig.cxx.

References Application::GetDefaultDevice(), and OutputDevice::GetDPIX().

Referenced by vcl::RenderPDFBitmaps(), and vcl::PDFWriterImpl::writeReferenceXObject().

◆ isCompatible()

bool vcl::pdf::isCompatible ( SvStream rInStream,
sal_uInt64  nPos,
sal_uInt64  nSize 
)

Decide if PDF data is old enough to be compatible.

Definition at line 19 of file pdfcompat.cxx.

References nPos, SvStream::ReadBytes(), SvStream::Seek(), and o3tl::toInt32().

Referenced by getCompatibleStream().

◆ pointToPixel()

double vcl::pdf::pointToPixel ( const double  fPoint,
const double  fResolutionDPI 
)
inline

Variable Documentation

◆ constDictionaryKeyContents

constexpr OStringLiteral vcl::pdf::constDictionaryKeyContents = "Contents"
inlineconstexpr

Definition at line 44 of file PDFiumLibrary.hxx.

◆ constDictionaryKeyInteriorColor

constexpr OStringLiteral vcl::pdf::constDictionaryKeyInteriorColor = "IC"
inlineconstexpr

Definition at line 47 of file PDFiumLibrary.hxx.

◆ constDictionaryKeyModificationDate

constexpr OStringLiteral vcl::pdf::constDictionaryKeyModificationDate = "M"
inlineconstexpr

Definition at line 46 of file PDFiumLibrary.hxx.

◆ constDictionaryKeyPopup

constexpr OStringLiteral vcl::pdf::constDictionaryKeyPopup = "Popup"
inlineconstexpr

Definition at line 45 of file PDFiumLibrary.hxx.

◆ constDictionaryKeyTitle

constexpr OStringLiteral vcl::pdf::constDictionaryKeyTitle = "T"
inlineconstexpr

Definition at line 43 of file PDFiumLibrary.hxx.

◆ g_nInheritedPageHeight

constexpr sal_Int32 vcl::pdf::g_nInheritedPageHeight = 842
constexpr

◆ g_nInheritedPageWidth

constexpr sal_Int32 vcl::pdf::g_nInheritedPageWidth = 595
constexpr

Definition at line 117 of file pdfwriter_impl.hxx.

Referenced by vcl::PDFWriterImpl::emitCatalog().