3#ifndef PDFSDK_CXX_TEXT_EDIT_H_INCLUDED_
4#define PDFSDK_CXX_TEXT_EDIT_H_INCLUDED_
6#include <pdfsdk/cxx/element.h>
7#include <pdfsdk/cxx/math.h>
8#include <pdfsdk/cxx/text_run.h>
11#include "forward_declarations.h"
12#include "wrapper_base.h"
25class Layout :
public detail::RefCountedHandle<PDTLayout> {
117 PDF_CXX_CORE_WRAPPER_DEFINE_MEMBERS_(
Layout, PDTLayout)
123class TextBlock :
public detail::RefCountedHandle<PDTTextBlock> {
202 PDF_CXX_CORE_WRAPPER_DEFINE_MEMBERS_(
TextBlock, PDTTextBlock)
399 PDF_CXX_CORE_WRAPPER_DEFINE_MEMBERS_(
CharIterator, PDTCharIterator)
407class TextCommand :
public detail::RefCountedHandle<PDTTextCommand> {
689 PDF_CXX_CORE_WRAPPER_DEFINE_MEMBERS_(
TextCommand, PDTTextCommand)
694 PDF_CHECK_SUCCESS_X(PDPageBuildTextLayout(page.get(), &text_layout));
700 PDF_CHECK_SUCCESS_X(PDEFormXObjectBuildTextLayout(doc.get(), xform.get(), &text_layout));
706 PDF_CHECK_SUCCESS_X(PDTLayoutNewTextBlock(m_handle, index, &text_block));
711 PDF_CHECK_SUCCESS_X(PDTLayoutInsertTextBlock(m_handle, index, text_block.get()));
715 PDF_CHECK_SUCCESS_X(PDTLayoutRemoveTextBlock(m_handle, index));
719 size_t num_blocks = 0;
720 PDF_CHECK_SUCCESS_X(PDTLayoutGetNumTextBlocks(m_handle, &num_blocks));
726 PDF_CHECK_SUCCESS_X(PDTLayoutGetTextBlock(m_handle, index, &text_block));
731 size_t index = kPDPageIndexNull;
732 PDF_CHECK_SUCCESS_X(PDTLayoutGetTextBlockIndex(m_handle, text_block.get(), &index));
738 PDF_CHECK_SUCCESS_X(PDTCharIteratorAtBeginPage(m_handle, &char_begin));
744 PDF_CHECK_SUCCESS_X(PDTCharIteratorAtEndPage(m_handle, &char_end));
750 PDF_CHECK_SUCCESS_X(PDTCharIteratorAtPoint(m_handle, &point, &char_iter));
756 PDF_CHECK_SUCCESS_X(PDTCharIteratorForItem(m_handle, text_run.get(), char_index, &char_iter));
762 PDF_CHECK_SUCCESS_X(PDTCharIteratorForItemAtPoint(m_handle, text_run.get(), &point, &char_iter));
767 return PDTTextBlockEqual(m_handle, that.get());
772 PDF_CHECK_SUCCESS_X(PDTTextBlockGetPosition(m_handle, &position));
778 PDF_CHECK_SUCCESS_X(PDTTextBlockGetSize(m_handle, &size));
783 float rotation = 0.f;
784 PDF_CHECK_SUCCESS_X(PDTTextBlockGetRotate(m_handle, &rotation));
789 bool reflected =
false;
790 PDF_CHECK_SUCCESS_X(PDTTextBlockIsReflected(m_handle, &reflected));
796 PDF_CHECK_SUCCESS_X(PDTTextBlockGetBBox(m_handle, &bbox));
802 PDF_CHECK_SUCCESS_X(PDTTextBlockGetCharBegin(text_layout.get(), m_handle, &char_begin));
808 PDF_CHECK_SUCCESS_X(PDTTextBlockGetCharEnd(text_layout.get(), m_handle, &char_end));
816 PDF_CHECK(char_iter.
Distance(end_iter) >=
static_cast<int>(char_index),
kPDErrOutOfRange,
"Character index out of bounds.");
817 char_iter.
Move(
static_cast<int>(char_index));
824 PDF_CHECK_SUCCESS_X(PDTTextBlockCreateTextElement(m_handle, &text_object));
830 PDF_CHECK_SUCCESS_X(PDTTextBlockIsExplicitWidth(m_handle, &value));
835 PDF_CHECK_SUCCESS_X(PDTTextBlockSetExplicitWidth(m_handle, value));
840 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetBlockBegin(m_handle, &char_iter));
846 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetBlockEnd(m_handle, &char_iter));
852 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetParaBegin(m_handle, &char_iter));
858 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetParaEnd(m_handle, &char_iter));
864 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetLineBegin(m_handle, &char_iter));
870 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetLineEnd(m_handle, &char_iter));
876 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetWordBegin(m_handle, &char_iter));
882 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetWordEnd(m_handle, &char_iter));
888 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetSpanBegin(m_handle, &char_iter));
894 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetSpanEnd(m_handle, &char_iter));
900 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetAbove(m_handle, &char_iter));
906 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetAboveAtPage(m_handle, prev_page_text_layout.get(), &char_iter));
912 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetBelow(m_handle, &char_iter));
918 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetBelowAtPage(m_handle, next_page_text_layout.get(), &char_iter));
924 PDF_CHECK_SUCCESS_X(PDTCharIteratorCopy(m_handle, ©));
929 PDF_CHECK_SUCCESS_X(PDTCharIteratorIncrement(m_handle));
933 PDF_CHECK_SUCCESS_X(PDTCharIteratorDecrement(m_handle));
937 PDF_CHECK_SUCCESS_X(PDTCharIteratorAdvance(m_handle, n));
942 PDF_CHECK_SUCCESS_X(PDTCharIteratorDistance(m_handle, that.get(), &dist));
948 PDF_CHECK_SUCCESS_X(PDTCharIteratorLess(m_handle, that.get(), &less));
954 PDF_CHECK_SUCCESS_X(PDTCharIteratorEqual(m_handle, that.get(), &equal));
959 return ::PDF::detail::GetWstringProperty(PDTCharIteratorGetUnicode, m_handle);
963 size_t page_index = kPDPageIndexNull;
964 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetPageIndex(m_handle, &page_index));
970 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetQuad(m_handle, &quad));
976 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetOutlineQuad(m_handle, &quad));
982 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetTextBlock(m_handle, &text_block));
988 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetFontAttrs(m_handle, &font_attrs));
994 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetParaAttrs(m_handle, ¶_attrs));
1000 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetListAttrs(m_handle, &list_attrs));
1006 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetTransform(m_handle, &matrix));
1012 PDF_CHECK_SUCCESS_X(PDTCharIteratorGetTextItem(m_handle, &text_run));
1018 PDF_CHECK_SUCCESS_X(PDTCreateDeleteTextCommand(doc.get(), beg.get(), end.get(), &text_command));
1019 return text_command;
1024 PDF_CHECK_SUCCESS_X(PDTCreateInsertTextCommand(doc.get(), pos.get(), &font_attrs, chars.data(), chars.size(), &text_command));
1025 return text_command;
1030 PDF_CHECK_SUCCESS_X(PDTCreateReplaceTextCommand(doc.get(), beg.get(), end.get(), &font_attrs, chars.data(), chars.size(), &text_command));
1031 return text_command;
1036 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontCommand(doc.get(), beg.get(), end.get(), font_family, font_format, &text_command));
1037 return text_command;
1042 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontStyleCommand(doc.get(), beg.get(), end.get(), font_style, &text_command));
1043 return text_command;
1048 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontSizeCommand(doc.get(), beg.get(), end.get(), font_size, &text_command));
1049 return text_command;
1054 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontColorCommand(doc.get(), beg.get(), end.get(), font_color, &text_command));
1055 return text_command;
1060 PDF_CHECK_SUCCESS_X(PDTCreateChangeEscapementCommand(doc.get(), begin.get(), end.get(), escapment, &text_command));
1061 return text_command;
1066 PDF_CHECK_SUCCESS_X(PDTCreateChangeHorzScalingCommand(doc.get(), begin.get(), end.get(), horz_scaling, &text_command));
1067 return text_command;
1072 PDF_CHECK_SUCCESS_X(PDTCreateChangeCharSpacingCommand(doc.get(), begin.get(), end.get(), char_spacing, &text_command));
1073 return text_command;
1078 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontHighlightColorCommand(doc.get(), begin.get(), end.get(), fontColor, &text_command));
1079 return text_command;
1084 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontStrikeoutColorCommand(doc.get(), begin.get(), end.get(), fontColor, &text_command));
1085 return text_command;
1090 PDF_CHECK_SUCCESS_X(PDTCreateChangeFontUnderlineColorCommand(doc.get(), begin.get(), end.get(), fontColor, &text_command));
1091 return text_command;
1096 PDF_CHECK_SUCCESS_X(PDTCreateChangeParaAttrsCommand(doc.get(), iter.get(), ¶_attrs, &text_command));
1097 return text_command;
1102 PDF_CHECK_SUCCESS_X(PDTCreateNewTextBlockCommand(doc.get(), layout.get(), &page_point, &font_attrs, ¶_attrs, &text_command));
1103 return text_command;
1108 PDF_CHECK_SUCCESS_X(PDTCreateDeleteTextBlockCommand(doc.get(), layout.get(), block.get(), &text_command));
1109 return text_command;
1114 PDF_CHECK_SUCCESS_X(PDTCreateMergeTextBlocksCommand(doc.get(), begin.get(), end.get(), &text_command));
1115 return text_command;
1120 PDF_CHECK_SUCCESS_X(PDTCreateUpdateTextBlocksCommand(doc.get(), layout.get(), &text_command));
1121 return text_command;
1126 PDF_CHECK_SUCCESS_X(PDTCreateMoveTextBlockCommand(doc.get(), layout.get(), block_index, &pos, &text_command));
1127 return text_command;
1132 PDF_CHECK_SUCCESS_X(PDTCreateRotateTextBlockCommand(doc.get(), layout.get(), block_index, radians, &text_command));
1133 return text_command;
1138 PDF_CHECK_SUCCESS_X(PDTCreateScaleTextBlockCommand(doc.get(), layout.get(), block_index, &size, &text_command));
1139 return text_command;
1144 PDF_CHECK_SUCCESS_X(PDTCreateResizeTextBlockCommand(doc.get(), layout.get(), block_index, &size, &text_command));
1145 return text_command;
1150 PDF_CHECK_SUCCESS_X(PDTCreateSyncWithContentCommand(doc.get(), layout.get(), block_index, on_top, &text_command));
1151 return text_command;
1156 PDF_CHECK_SUCCESS_X(PDTCreateChangeListStyleCommand(doc.get(), begin.get(), end.get(), &style, &text_command));
1157 return text_command;
1162 PDF_CHECK_SUCCESS_X(PDTCreateChangeListLevelCommand(doc.get(), begin.get(), end.get(), change, &text_command));
1163 return text_command;
1167 PDF_CHECK_SUCCESS_X(PDTTextCommandDo(m_handle));
1171 PDF_CHECK_SUCCESS_X(PDTTextCommandUndo(m_handle));
1175 bool fontSubstituted =
false;
1176 PDF_CHECK_SUCCESS_X(PDTTextCommandIsFontSubstituted(m_handle, &fontSubstituted));
1177 return fontSubstituted;
Represents a PDF document.
Definition document.h:22
Represents an element of the content array.
Definition element.h:29
Represents a leaf node (Page Object).
Definition page.h:20
The CharIterator class represents an iterator to a character in a Layout.
Definition text_edit.h:208
size_t GetPageIndex() const
Gets the page index of the current iterator.
Definition text_edit.h:962
CharIterator GetLineBegin() const
Gets the iterator to the beginning of the current line.
Definition text_edit.h:862
PDTListAttrs GetListAttrs() const
Gets the list attributes of the current character.
Definition text_edit.h:998
int Distance(const CharIterator &that) const
Calculates the distance between the current iterator and another iterator.
Definition text_edit.h:940
CharIterator GetWordEnd() const
Gets the iterator to the end of the current word.
Definition text_edit.h:880
PDTParaAttrs GetParaAttrs() const
Gets the paragraph attributes of the current character.
Definition text_edit.h:992
CharIterator GetAboveAtPage(const Layout &prev_page_text_layout) const
Gets the iterator to the character above the current character on the previous page.
Definition text_edit.h:904
CharIterator GetBelowAtPage(const Layout &next_page_text_layout) const
Gets the iterator to the character below the current character on the next page.
Definition text_edit.h:916
Matrix GetTransform() const
Gets the transformation matrix of the current character.
Definition text_edit.h:1004
void Move(int n)
Moves the iterator by the specified number of characters.
Definition text_edit.h:936
CharIterator GetLineEnd() const
Gets the iterator to the end of the current line.
Definition text_edit.h:868
void MoveNext()
Moves the iterator to the next character.
Definition text_edit.h:928
bool Less(const CharIterator &that) const
Checks if the current iterator is less than another iterator.
Definition text_edit.h:946
void MovePrev()
Moves the iterator to the previous character.
Definition text_edit.h:932
CharIterator GetParaBegin() const
Gets the iterator to the beginning of the current paragraph.
Definition text_edit.h:850
CharIterator GetBlockEnd() const
Gets the iterator to the end of the current block.
Definition text_edit.h:844
Quad GetOutlineQuad() const
Gets the quad representing the outline of the current character.
Definition text_edit.h:974
CharIterator GetParaEnd() const
Gets the iterator to the end of the current paragraph.
Definition text_edit.h:856
CharIterator GetSpanBegin() const
Gets the iterator to the beginning of the current span.
Definition text_edit.h:886
std::wstring GetUnicodeChar() const
Gets the Unicode character at the current iterator position.
Definition text_edit.h:958
CharIterator GetBlockBegin() const
Gets the iterator to the beginning of the current block.
Definition text_edit.h:838
Quad GetQuad() const
Gets the quad representing the bounding box of the current character.
Definition text_edit.h:968
TextRun GetTextRun() const
Gets the TextRun containing the current character.
Definition text_edit.h:1010
CharIterator GetBelow() const
Gets the iterator to the character below the current character.
Definition text_edit.h:910
CharIterator Copy() const
Creates a copy of the current iterator.
Definition text_edit.h:922
CharIterator GetAbove() const
Gets the iterator to the character above the current character.
Definition text_edit.h:898
CharIterator GetSpanEnd() const
Gets the iterator to the end of the current span.
Definition text_edit.h:892
CharIterator GetWordBegin() const
Gets the iterator to the beginning of the current word.
Definition text_edit.h:874
PDTFontAttrs GetFontAttrs() const
Gets the font attributes of the current character.
Definition text_edit.h:986
TextBlock GetTextBlock() const
Gets the TextBlock containing the current character.
Definition text_edit.h:980
bool Equal(const CharIterator &that) const
Checks if the current iterator is equal to another iterator.
Definition text_edit.h:952
The Layout class represents a text layout in a PDF document.
Definition text_edit.h:25
TextBlock GetTextBlock(size_t index) const
Gets the TextBlock at the specified index.
Definition text_edit.h:724
static Layout BuildForPage(const Page &page)
Builds a Layout object for a specific page.
Definition text_edit.h:692
CharIterator GetCharIterAtPoint(const PointF &point) const
Gets an iterator to the character at the specified point in the Layout.
Definition text_edit.h:748
TextBlock NewTextBlock(size_t index)
Creates a new TextBlock at the specified index.
Definition text_edit.h:704
size_t FindTextBlockIndex(const TextBlock &text_block) const
Finds the index of the specified TextBlock in the Layout.
Definition text_edit.h:730
void InsertTextBlock(size_t index, const TextBlock &text_block)
Inserts a TextBlock at the specified index.
Definition text_edit.h:710
void RemoveTextBlock(size_t index)
Removes the TextBlock at the specified index.
Definition text_edit.h:714
CharIterator GetCharIterForItem(const TextRun &text_run, size_t char_index) const
Gets an iterator to the character at the specified index within a TextRun in the Layout.
Definition text_edit.h:754
CharIterator GetCharsEnd() const
Gets an iterator to the end of the characters in the Layout.
Definition text_edit.h:742
size_t GetNumTextBlocks() const
Gets the number of TextBlocks in the Layout.
Definition text_edit.h:718
CharIterator GetCharsBegin() const
Gets an iterator to the beginning of the characters in the Layout.
Definition text_edit.h:736
CharIterator GetCharIterForItemAtPoint(const TextRun &text_run, const PointF &point) const
Gets an iterator to the character at the specified point within a TextRun in the Layout.
Definition text_edit.h:760
static Layout BuildForFormXObject(const Document &doc, const XObject &xform)
Builds a Layout object for a specific form XObject.
Definition text_edit.h:698
The TextBlock class represents a block of text in a Layout.
Definition text_edit.h:123
CharIterator GetCharEnd(const Layout &text_layout) const
Gets an iterator to the end of the characters in the TextBlock.
Definition text_edit.h:806
bool IsExplicitWidth() const
Checks if the TextBlock has an explicit width.
Definition text_edit.h:828
Element CreateTextElement() const
Creates a TextElement from the TextBlock.
Definition text_edit.h:822
bool Equals(const TextBlock &that) const
Checks if the current TextBlock is equal to another TextBlock.
Definition text_edit.h:766
bool IsReflected() const
Checks if the TextBlock is reflected.
Definition text_edit.h:788
void SetExplicitWidth(bool value)
Sets whether the TextBlock has an explicit width.
Definition text_edit.h:834
CharIterator GetCharByIndex(const Layout &text_layout, size_t char_index) const
Gets an iterator to the character at the specified index in the TextBlock.
Definition text_edit.h:812
PointF GetPosition() const
Gets the position of the TextBlock.
Definition text_edit.h:770
float GetRotation() const
Gets the rotation angle of the TextBlock.
Definition text_edit.h:782
RectF GetBBox() const
Gets the bounding box of the TextBlock.
Definition text_edit.h:794
SizeF GetSize() const
Gets the size of the TextBlock.
Definition text_edit.h:776
CharIterator GetCharBegin(const Layout &text_layout) const
Gets an iterator to the beginning of the characters in the TextBlock.
Definition text_edit.h:800
The TextCommand class represents a command that can be performed on text in a Layout....
Definition text_edit.h:407
static TextCommand RotateTextBlock(Document doc, Layout layout, size_t block_index, float radians)
Rotates a text block by a specified angle and returns the command.
Definition text_edit.h:1130
static TextCommand ChangeCharSpacing(Document doc, CharIterator begin, CharIterator end, float char_spacing)
Changes the character spacing of text within a specified range and returns the command.
Definition text_edit.h:1070
static TextCommand ChangeHighlightColor(Document doc, CharIterator begin, CharIterator end, PDColorValue fontColor)
Changes the highlight color of text within a specified range and returns the command.
Definition text_edit.h:1076
static TextCommand ChangeFontStyle(Document doc, CharIterator beg, CharIterator end, PDFontStyle font_style)
Changes the font style of text within a specified range and returns the command.
Definition text_edit.h:1040
static TextCommand ChangeFont(Document doc, CharIterator beg, CharIterator end, PDAtom font_family, PDAtom font_format)
Changes the font of text within a specified range and returns the command.
Definition text_edit.h:1034
static TextCommand DeleteText(Document doc, CharIterator beg, CharIterator end)
Deletes the text within a specified range and returns the command.
Definition text_edit.h:1016
static TextCommand ChangeListStyle(Document doc, CharIterator begin, CharIterator end, const PDTListLevelStyle &style)
Changes the list style of text within a specified range and returns the command.
Definition text_edit.h:1154
static TextCommand InsertText(Document doc, CharIterator pos, const PDTFontAttrs &font_attrs, const std::wstring &chars)
Inserts the specified text at the position and returns the command.
Definition text_edit.h:1022
void Undo()
Undoes the applied text command.
Definition text_edit.h:1170
static TextCommand SyncWithContent(Document doc, Layout layout, size_t block_index, bool on_top)
Synchronizes a text block with its content and returns the command.
Definition text_edit.h:1148
static TextCommand ChangeFontColor(Document doc, CharIterator beg, CharIterator end, PDColorValue font_color)
Changes the font color of text within a specified range and returns the command.
Definition text_edit.h:1052
bool IsFontSubstituted() const
Checks if the font was substituted during the text command.
Definition text_edit.h:1174
static TextCommand NewTextBlock(Document doc, Layout layout, const PointF &page_point, const PDTFontAttrs &font_attrs, const PDTParaAttrs ¶_attrs)
Creates a new text block at a specified position and returns the command.
Definition text_edit.h:1100
static TextCommand UpdateTextBlocks(Document doc, Layout layout)
Updates all text blocks in a Layout and returns the command.
Definition text_edit.h:1118
void Redo()
Redoes the applied text command.
Definition text_edit.h:1166
static TextCommand MoveTextBlock(Document doc, Layout layout, size_t block_index, const PointF &pos)
Moves a text block to a new position and returns the command.
Definition text_edit.h:1124
static TextCommand ResizeTextBlock(Document doc, Layout layout, size_t block_index, const SizeF &size)
Resizes a text block to a new size and returns the command.
Definition text_edit.h:1142
static TextCommand ScaleTextBlock(Document doc, Layout layout, size_t block_index, const SizeF &size)
Scales a text block to a new size and returns the command.
Definition text_edit.h:1136
static TextCommand ChangeEscapement(Document doc, CharIterator begin, CharIterator end, PDTEscapement escapment)
Changes the escapement (vertical location relative to the baseline, also known as superscript or subs...
Definition text_edit.h:1058
static TextCommand MergeTextBlocks(Document doc, CharIterator begin, CharIterator end)
Merges multiple text blocks into a single text block and returns the command.
Definition text_edit.h:1112
static TextCommand ChangeUnderlineColor(Document doc, CharIterator begin, CharIterator end, PDColorValue fontColor)
Changes the underline color of text within a specified range and returns the command.
Definition text_edit.h:1088
static TextCommand ChangeListLevel(Document doc, CharIterator begin, CharIterator end, int change)
Changes the list level of text within a specified range and returns the command. This refers to adjus...
Definition text_edit.h:1160
static TextCommand ChangeParaAttrs(Document doc, CharIterator iter, const PDTParaAttrs ¶_attrs)
Changes the paragraph attributes of text for a specific paragraph and returns the command.
Definition text_edit.h:1094
static TextCommand ChangeHorzScaling(Document doc, CharIterator begin, CharIterator end, float horz_scaling)
Changes the horizontal scaling (horizontal stretch) of text within a specified range and returns the ...
Definition text_edit.h:1064
static TextCommand ChangeFontSize(Document doc, CharIterator beg, CharIterator end, float font_size)
Changes the font size of text within a specified range and returns the command.
Definition text_edit.h:1046
static TextCommand DeleteTextBlock(Document doc, Layout layout, const TextBlock &block)
Deletes a text block from a Layout and returns the command.
Definition text_edit.h:1106
static TextCommand ChangeStrikeoutColor(Document doc, CharIterator begin, CharIterator end, PDColorValue fontColor)
Changes the strikeout color of text within a specified range and returns the command.
Definition text_edit.h:1082
static TextCommand ReplaceText(Document doc, CharIterator beg, CharIterator end, const PDTFontAttrs &font_attrs, const std::wstring &chars)
Replaces text within a specified range and returns the command.
Definition text_edit.h:1028
Represents a text run in a PDF document.
Definition text_run.h:19
Represents an XObject in a PDF document.
Definition xobject.h:22
@ kPDErrOutOfRange
Value out of range.
Definition errors.h:22
PDFontStyle
Specifies the styling to apply to a font.
Definition fonts.h:24
Definition text_edit.h:42
Definition text_edit.h:109
Definition text_edit.h:90
Definition text_edit.h:68
PDTEscapement
Defines the vertical position of text relative to the baseline.
Definition text_edit.h:36