AreaPdfRenderer.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. package epson.print.pdf;
  2. import android.content.Context;
  3. import android.support.annotation.NonNull;
  4. import epson.common.ExternalFileUtils;
  5. import epson.print.CommonDefine;
  6. import epson.print.pdf.AdobePdfContainer;
  7. import java.io.File;
  8. public class AreaPdfRenderer {
  9. private static final String TAG = "AreaPdfRenderer";
  10. private AdobePdfContainer mPdfContainer;
  11. /* access modifiers changed from: package-private */
  12. @VisibleForTesting
  13. public void setPdfContainer(AdobePdfContainer adobePdfContainer) {
  14. this.mPdfContainer = adobePdfContainer;
  15. }
  16. public boolean openPdfFile(String str, String str2, Context context) {
  17. this.mPdfContainer = new AdobePdfContainer(context);
  18. try {
  19. if (!checkFileSize(str)) {
  20. return false;
  21. }
  22. this.mPdfContainer.LoadDocument(str, str2);
  23. return true;
  24. } catch (Exception unused) {
  25. return false;
  26. }
  27. }
  28. private boolean checkFileSize(String str) {
  29. File file = new File(str);
  30. if (file.canRead() && file.length() > 0) {
  31. return true;
  32. }
  33. return false;
  34. }
  35. public int totalPages() {
  36. AdobePdfContainer adobePdfContainer = this.mPdfContainer;
  37. if (adobePdfContainer != null) {
  38. return adobePdfContainer.CountPages();
  39. }
  40. return 0;
  41. }
  42. public boolean isPageLandscape(int i) throws AdobePdfContainer.ParameterException {
  43. return this.mPdfContainer.GetPageSizeX(i) > this.mPdfContainer.GetPageSizeY(i);
  44. }
  45. public boolean convertPageForPrint(String str, int i, int[] iArr) throws AdobePdfContainer.ParameterException {
  46. int[] inscribeSize = getInscribeSize(iArr, (float) this.mPdfContainer.GetPageSizeX(i), (float) this.mPdfContainer.GetPageSizeY(i));
  47. return this.mPdfContainer.decodeToJpegFile(str, i, inscribeSize[0], inscribeSize[1]);
  48. }
  49. @NonNull
  50. public static int[] getPortraitOrLandscapeSize(@NonNull int[] iArr, boolean z) {
  51. if ((iArr[0] <= iArr[1]) == z) {
  52. return iArr;
  53. }
  54. return new int[]{iArr[1], iArr[0]};
  55. }
  56. @VisibleForTesting
  57. @NonNull
  58. public static int[] getCircumscribedSize(@NonNull int[] iArr, @NonNull int[] iArr2) {
  59. float inscribedScaleFactor = getInscribedScaleFactor((float) iArr2[0], (float) iArr2[1], (float) iArr[0], (float) iArr[1]);
  60. return new int[]{(int) Math.ceil((double) (((float) iArr2[0]) / inscribedScaleFactor)), (int) Math.ceil((double) (((float) iArr2[1]) / inscribedScaleFactor))};
  61. }
  62. public static int[] getInscribeSize(int[] iArr, float f, float f2) {
  63. float inscribedScaleFactor = getInscribedScaleFactor((float) iArr[0], (float) iArr[1], f, f2);
  64. return new int[]{(int) (f * inscribedScaleFactor), (int) (f2 * inscribedScaleFactor)};
  65. }
  66. public static float getInscribedScaleFactor(float f, float f2, float f3, float f4) {
  67. return Math.min(f / f3, f2 / f4);
  68. }
  69. public static File getPdfDecodeFilename(Context context, int i) {
  70. String printDir = ExternalFileUtils.getInstance(context).getPrintDir();
  71. return new File(printDir, CommonDefine.UNDER_BAR + i + ".jpg");
  72. }
  73. }