1// Signature format: 2.0 2package android.graphics.pdf { 3 4 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class LoadParams { 5 method @Nullable public String getPassword(); 6 } 7 8 public static final class LoadParams.Builder { 9 ctor public LoadParams.Builder(); 10 method @NonNull public android.graphics.pdf.LoadParams build(); 11 method @NonNull public android.graphics.pdf.LoadParams.Builder setPassword(@Nullable String); 12 } 13 14 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PdfRendererPreV implements java.lang.AutoCloseable { 15 ctor public PdfRendererPreV(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException; 16 ctor public PdfRendererPreV(@NonNull android.os.ParcelFileDescriptor, @NonNull android.graphics.pdf.LoadParams) throws java.io.IOException; 17 method public void close(); 18 method public int getDocumentLinearizationType(); 19 method @IntRange(from=0) public int getPageCount(); 20 method @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public int getPdfFormType(); 21 method @NonNull public android.graphics.pdf.PdfRendererPreV.Page openPage(@IntRange(from=0) int); 22 method public void write(@NonNull android.os.ParcelFileDescriptor, boolean) throws java.io.IOException; 23 field public static final int DOCUMENT_LINEARIZED_TYPE_LINEARIZED = 1; // 0x1 24 field public static final int DOCUMENT_LINEARIZED_TYPE_NON_LINEARIZED = 0; // 0x0 25 field @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public static final int PDF_FORM_TYPE_ACRO_FORM = 1; // 0x1 26 field @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public static final int PDF_FORM_TYPE_NONE = 0; // 0x0 27 field @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public static final int PDF_FORM_TYPE_XFA_FOREGROUND = 3; // 0x3 28 field @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public static final int PDF_FORM_TYPE_XFA_FULL = 2; // 0x2 29 } 30 31 public final class PdfRendererPreV.Page implements java.lang.AutoCloseable { 32 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") public int addPageAnnotation(@NonNull android.graphics.pdf.component.PdfAnnotation); 33 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public int addPageObject(@NonNull android.graphics.pdf.component.PdfPageObject); 34 method @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") @NonNull public java.util.List<android.graphics.Rect> applyEdit(@NonNull android.graphics.pdf.models.FormEditRecord); 35 method public void close(); 36 method @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") @NonNull public android.graphics.pdf.models.FormWidgetInfo getFormWidgetInfoAtIndex(@IntRange(from=0) int); 37 method @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") @NonNull public android.graphics.pdf.models.FormWidgetInfo getFormWidgetInfoAtPosition(int, int); 38 method @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") @NonNull public java.util.List<android.graphics.pdf.models.FormWidgetInfo> getFormWidgetInfos(); 39 method @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") @NonNull public java.util.List<android.graphics.pdf.models.FormWidgetInfo> getFormWidgetInfos(@NonNull int[]); 40 method @NonNull public java.util.List<android.graphics.pdf.content.PdfPageGotoLinkContent> getGotoLinks(); 41 method @IntRange(from=0) public int getHeight(); 42 method @NonNull public java.util.List<android.graphics.pdf.content.PdfPageImageContent> getImageContents(); 43 method @IntRange(from=0) public int getIndex(); 44 method @NonNull public java.util.List<android.graphics.pdf.content.PdfPageLinkContent> getLinkContents(); 45 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") @NonNull public java.util.List<android.graphics.pdf.component.PdfAnnotation> getPageAnnotations(); 46 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") @NonNull public java.util.List<android.graphics.pdf.component.PdfPageObject> getPageObjects(); 47 method @NonNull public java.util.List<android.graphics.pdf.content.PdfPageTextContent> getTextContents(); 48 method @IntRange(from=0) public int getWidth(); 49 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") @NonNull public android.graphics.pdf.component.PdfAnnotation removePageAnnotation(int); 50 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") @NonNull public android.graphics.pdf.component.PdfPageObject removePageObject(int); 51 method public void render(@NonNull android.graphics.Bitmap, @Nullable android.graphics.Rect, @Nullable android.graphics.Matrix, @NonNull android.graphics.pdf.RenderParams); 52 method @NonNull public java.util.List<android.graphics.pdf.models.PageMatchBounds> searchText(@NonNull String); 53 method @Nullable public android.graphics.pdf.models.selection.PageSelection selectContent(@NonNull android.graphics.pdf.models.selection.SelectionBoundary, @NonNull android.graphics.pdf.models.selection.SelectionBoundary); 54 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") public boolean updatePageAnnotation(@NonNull android.graphics.pdf.component.PdfAnnotation); 55 method @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public boolean updatePageObject(@NonNull android.graphics.pdf.component.PdfPageObject); 56 } 57 58 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class RenderParams { 59 method public int getRenderFlags(); 60 method public int getRenderMode(); 61 field public static final int FLAG_RENDER_HIGHLIGHT_ANNOTATIONS = 4; // 0x4 62 field public static final int FLAG_RENDER_TEXT_ANNOTATIONS = 2; // 0x2 63 field public static final int RENDER_MODE_FOR_DISPLAY = 1; // 0x1 64 field public static final int RENDER_MODE_FOR_PRINT = 2; // 0x2 65 } 66 67 public static final class RenderParams.Builder { 68 ctor public RenderParams.Builder(int); 69 method @NonNull public android.graphics.pdf.RenderParams build(); 70 method @NonNull public android.graphics.pdf.RenderParams.Builder setRenderFlags(int); 71 method @NonNull public android.graphics.pdf.RenderParams.Builder setRenderFlags(int, int); 72 } 73 74} 75 76package android.graphics.pdf.component { 77 78 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_text_annotations") public final class FreeTextAnnotation extends android.graphics.pdf.component.PdfAnnotation { 79 ctor public FreeTextAnnotation(@NonNull android.graphics.RectF, @NonNull String); 80 method @ColorInt public int getBackgroundColor(); 81 method @ColorInt public int getTextColor(); 82 method @NonNull public String getTextContent(); 83 method public void setBackgroundColor(@ColorInt int); 84 method public void setTextColor(@ColorInt int); 85 method public void setTextContent(@NonNull String); 86 } 87 88 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") public final class HighlightAnnotation extends android.graphics.pdf.component.PdfAnnotation { 89 ctor public HighlightAnnotation(@NonNull android.graphics.RectF); 90 method @ColorInt public int getColor(); 91 method public void setColor(@ColorInt int); 92 } 93 94 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") public abstract class PdfAnnotation { 95 method @NonNull public android.graphics.RectF getBounds(); 96 method public int getId(); 97 method public int getPdfAnnotationType(); 98 method public void setBounds(@NonNull android.graphics.RectF); 99 } 100 101 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_annotations") public final class PdfAnnotationType { 102 field @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_text_annotations") public static final int FREETEXT = 1; // 0x1 103 field public static final int HIGHLIGHT = 2; // 0x2 104 field public static final int STAMP = 3; // 0x3 105 field public static final int UNKNOWN = 0; // 0x0 106 } 107 108 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public final class PdfPageImageObject extends android.graphics.pdf.component.PdfPageObject { 109 ctor public PdfPageImageObject(@NonNull android.graphics.Bitmap); 110 method @NonNull public android.graphics.Bitmap getBitmap(); 111 method public void setBitmap(@NonNull android.graphics.Bitmap); 112 } 113 114 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public abstract class PdfPageObject { 115 method @NonNull public android.graphics.RectF getBounds(); 116 method @NonNull public float[] getMatrix(); 117 method public int getObjectId(); 118 method public int getPdfObjectType(); 119 method public boolean isAddedInAnnotation(); 120 method public void setBounds(@NonNull android.graphics.RectF); 121 method public void setMatrix(@NonNull android.graphics.Matrix); 122 method public void transform(float, float, float, float, float, float); 123 } 124 125 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public final class PdfPageObjectType { 126 method public static boolean isValidType(int); 127 field public static final int IMAGE = 3; // 0x3 128 field public static final int PATH = 2; // 0x2 129 field @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_text_objects") public static final int TEXT = 1; // 0x1 130 field public static final int UNKNOWN = 0; // 0x0 131 } 132 133 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public final class PdfPagePathObject extends android.graphics.pdf.component.PdfPageObject { 134 ctor public PdfPagePathObject(); 135 method @Nullable public android.graphics.Color getFillColor(); 136 method @Nullable public android.graphics.PathEffect getLineStyle(); 137 method @NonNull public android.graphics.Path getPath(); 138 method @NonNull public android.graphics.Color getStrokeColor(); 139 method public float getStrokeWidth(); 140 method public void setFillColor(@Nullable android.graphics.Color); 141 method public void setLineStyle(int); 142 method public void setPath(@NonNull android.graphics.Path); 143 method public void setStrokeColor(@NonNull android.graphics.Color); 144 method public void setStrokeWidth(float); 145 } 146 147 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_page_objects") public final class PdfPageTextObject extends android.graphics.pdf.component.PdfPageObject { 148 ctor @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_text_objects") public PdfPageTextObject(@NonNull String, @NonNull android.graphics.Typeface, float); 149 method @Nullable public android.graphics.Color getFillColor(); 150 method public float getFontSize(); 151 method @NonNull public android.graphics.Color getStrokeColor(); 152 method public float getStrokeWidth(); 153 method @NonNull public String getText(); 154 method @NonNull public android.graphics.Typeface getTypeface(); 155 method public void setFillColor(@Nullable android.graphics.Color); 156 method public void setFontSize(float); 157 method public void setStrokeColor(@NonNull android.graphics.Color); 158 method public void setStrokeWidth(float); 159 method public void setText(@NonNull String); 160 method public void setTypeface(@NonNull android.graphics.Typeface); 161 } 162 163 @FlaggedApi("android.graphics.pdf.flags.enable_edit_pdf_stamp_annotations") public final class StampAnnotation extends android.graphics.pdf.component.PdfAnnotation { 164 ctor public StampAnnotation(@NonNull android.graphics.RectF); 165 method public void addObject(@NonNull android.graphics.pdf.component.PdfPageObject); 166 method @NonNull public java.util.List<android.graphics.pdf.component.PdfPageObject> getObjects(); 167 method public void removeObject(int); 168 } 169 170} 171 172package android.graphics.pdf.content { 173 174 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PdfPageGotoLinkContent implements android.os.Parcelable { 175 ctor public PdfPageGotoLinkContent(@NonNull java.util.List<android.graphics.RectF>, @NonNull android.graphics.pdf.content.PdfPageGotoLinkContent.Destination); 176 method public int describeContents(); 177 method @NonNull public java.util.List<android.graphics.RectF> getBounds(); 178 method @NonNull public android.graphics.pdf.content.PdfPageGotoLinkContent.Destination getDestination(); 179 method public void writeToParcel(@NonNull android.os.Parcel, int); 180 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.content.PdfPageGotoLinkContent> CREATOR; 181 } 182 183 public static final class PdfPageGotoLinkContent.Destination implements android.os.Parcelable { 184 ctor public PdfPageGotoLinkContent.Destination(int, float, float, float); 185 method public int describeContents(); 186 method @IntRange(from=0) public int getPageNumber(); 187 method @FloatRange(from=0.0f) public float getXCoordinate(); 188 method @FloatRange(from=0.0f) public float getYCoordinate(); 189 method @FloatRange(from=0.0f) public float getZoom(); 190 method public void writeToParcel(@NonNull android.os.Parcel, int); 191 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.content.PdfPageGotoLinkContent.Destination> CREATOR; 192 } 193 194 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PdfPageImageContent implements android.os.Parcelable { 195 ctor public PdfPageImageContent(@NonNull String); 196 method public int describeContents(); 197 method @NonNull public String getAltText(); 198 method public void writeToParcel(@NonNull android.os.Parcel, int); 199 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.content.PdfPageImageContent> CREATOR; 200 } 201 202 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PdfPageLinkContent implements android.os.Parcelable { 203 ctor public PdfPageLinkContent(@NonNull java.util.List<android.graphics.RectF>, @NonNull android.net.Uri); 204 method public int describeContents(); 205 method @NonNull public java.util.List<android.graphics.RectF> getBounds(); 206 method @NonNull public android.net.Uri getUri(); 207 method public void writeToParcel(@NonNull android.os.Parcel, int); 208 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.content.PdfPageLinkContent> CREATOR; 209 } 210 211 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PdfPageTextContent implements android.os.Parcelable { 212 ctor public PdfPageTextContent(@NonNull String); 213 ctor public PdfPageTextContent(@NonNull String, @NonNull java.util.List<android.graphics.RectF>); 214 method public int describeContents(); 215 method @NonNull public java.util.List<android.graphics.RectF> getBounds(); 216 method @NonNull public String getText(); 217 method public void writeToParcel(@NonNull android.os.Parcel, int); 218 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.content.PdfPageTextContent> CREATOR; 219 } 220 221} 222 223package android.graphics.pdf.models { 224 225 @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public final class FormEditRecord implements android.os.Parcelable { 226 method public int describeContents(); 227 method @Nullable public android.graphics.Point getClickPoint(); 228 method @IntRange(from=0) public int getPageNumber(); 229 method @NonNull public int[] getSelectedIndices(); 230 method @Nullable public String getText(); 231 method public int getType(); 232 method @IntRange(from=0) public int getWidgetIndex(); 233 method public void writeToParcel(@NonNull android.os.Parcel, int); 234 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.models.FormEditRecord> CREATOR; 235 field public static final int EDIT_TYPE_CLICK = 0; // 0x0 236 field public static final int EDIT_TYPE_SET_INDICES = 1; // 0x1 237 field public static final int EDIT_TYPE_SET_TEXT = 2; // 0x2 238 } 239 240 public static final class FormEditRecord.Builder { 241 ctor public FormEditRecord.Builder(int, @IntRange(from=0) int, @IntRange(from=0) int); 242 method @NonNull public android.graphics.pdf.models.FormEditRecord build(); 243 method @NonNull public android.graphics.pdf.models.FormEditRecord.Builder setClickPoint(@Nullable android.graphics.Point); 244 method @NonNull public android.graphics.pdf.models.FormEditRecord.Builder setSelectedIndices(@Nullable int[]); 245 method @NonNull public android.graphics.pdf.models.FormEditRecord.Builder setText(@Nullable String); 246 } 247 248 @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public final class FormWidgetInfo implements android.os.Parcelable { 249 method public int describeContents(); 250 method @Nullable public String getAccessibilityLabel(); 251 method @FloatRange(from=0.0f) public float getFontSize(); 252 method @NonNull public java.util.List<android.graphics.pdf.models.ListItem> getListItems(); 253 method @IntRange(from=0xffffffff) public int getMaxLength(); 254 method @Nullable public String getTextValue(); 255 method @IntRange(from=0) public int getWidgetIndex(); 256 method @NonNull public android.graphics.Rect getWidgetRect(); 257 method public int getWidgetType(); 258 method public boolean isEditableText(); 259 method public boolean isMultiLineText(); 260 method public boolean isMultiSelect(); 261 method public boolean isReadOnly(); 262 method public void writeToParcel(@NonNull android.os.Parcel, int); 263 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.models.FormWidgetInfo> CREATOR; 264 field public static final int WIDGET_TYPE_CHECKBOX = 2; // 0x2 265 field public static final int WIDGET_TYPE_COMBOBOX = 4; // 0x4 266 field public static final int WIDGET_TYPE_LISTBOX = 5; // 0x5 267 field public static final int WIDGET_TYPE_PUSHBUTTON = 1; // 0x1 268 field public static final int WIDGET_TYPE_RADIOBUTTON = 3; // 0x3 269 field public static final int WIDGET_TYPE_SIGNATURE = 7; // 0x7 270 field public static final int WIDGET_TYPE_TEXTFIELD = 6; // 0x6 271 field public static final int WIDGET_TYPE_UNKNOWN = 0; // 0x0 272 } 273 274 public static final class FormWidgetInfo.Builder { 275 ctor public FormWidgetInfo.Builder(int, @IntRange(from=0) int, @NonNull android.graphics.Rect, @NonNull String, @NonNull String); 276 method @NonNull public android.graphics.pdf.models.FormWidgetInfo build(); 277 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setEditableText(boolean); 278 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setFontSize(@FloatRange(from=0.0f) float); 279 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setListItems(@NonNull java.util.List<android.graphics.pdf.models.ListItem>); 280 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setMaxLength(@IntRange(from=0) int); 281 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setMultiLineText(boolean); 282 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setMultiSelect(boolean); 283 method @NonNull public android.graphics.pdf.models.FormWidgetInfo.Builder setReadOnly(boolean); 284 } 285 286 @FlaggedApi("android.graphics.pdf.flags.enable_form_filling") public final class ListItem implements android.os.Parcelable { 287 ctor public ListItem(@NonNull String, boolean); 288 method public int describeContents(); 289 method @NonNull public String getLabel(); 290 method public boolean isSelected(); 291 method public void writeToParcel(@NonNull android.os.Parcel, int); 292 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.models.ListItem> CREATOR; 293 } 294 295 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PageMatchBounds implements android.os.Parcelable { 296 ctor public PageMatchBounds(@NonNull java.util.List<android.graphics.RectF>, int); 297 method public int describeContents(); 298 method @NonNull public java.util.List<android.graphics.RectF> getBounds(); 299 method public int getTextStartIndex(); 300 method public void writeToParcel(@NonNull android.os.Parcel, int); 301 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.models.PageMatchBounds> CREATOR; 302 } 303 304} 305 306package android.graphics.pdf.models.selection { 307 308 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class PageSelection implements android.os.Parcelable { 309 ctor public PageSelection(int, @NonNull android.graphics.pdf.models.selection.SelectionBoundary, @NonNull android.graphics.pdf.models.selection.SelectionBoundary, @NonNull java.util.List<android.graphics.pdf.content.PdfPageTextContent>); 310 method public int describeContents(); 311 method public int getPage(); 312 method @NonNull public java.util.List<android.graphics.pdf.content.PdfPageTextContent> getSelectedTextContents(); 313 method @NonNull public android.graphics.pdf.models.selection.SelectionBoundary getStart(); 314 method @NonNull public android.graphics.pdf.models.selection.SelectionBoundary getStop(); 315 method public void writeToParcel(@NonNull android.os.Parcel, int); 316 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.models.selection.PageSelection> CREATOR; 317 } 318 319 @FlaggedApi("android.graphics.pdf.flags.enable_pdf_viewer") public final class SelectionBoundary implements android.os.Parcelable { 320 ctor public SelectionBoundary(int); 321 ctor public SelectionBoundary(@NonNull android.graphics.Point); 322 method public int describeContents(); 323 method public int getIndex(); 324 method public boolean getIsRtl(); 325 method @Nullable public android.graphics.Point getPoint(); 326 method public void writeToParcel(@NonNull android.os.Parcel, int); 327 field @NonNull public static final android.os.Parcelable.Creator<android.graphics.pdf.models.selection.SelectionBoundary> CREATOR; 328 } 329 330} 331 332