Add an embedder test to render jpx_lzw.pdf with flags. Improves test coverage for image rendering. e.g. in CFX_DIBitmap. Change-Id: I4400be825483b7957ba4940cab6158d5677b7738 Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/73571 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Hui Yingst <nigi@chromium.org>
diff --git a/fpdfsdk/fpdf_view_embeddertest.cpp b/fpdfsdk/fpdf_view_embeddertest.cpp index 563710a..d47edb6 100644 --- a/fpdfsdk/fpdf_view_embeddertest.cpp +++ b/fpdfsdk/fpdf_view_embeddertest.cpp
@@ -1267,6 +1267,34 @@ UnloadPage(page); } +TEST_F(FPDFViewEmbedderTest, RenderJpxLzwImageWithFlags) { + static const char kNormalChecksum[] = "4bcd56cae1ca2622403e8af07242e71a"; + static const char kGrayscaleChecksum[] = "fe45ad56efe868ba82285fa5ffedc0cb"; + + ASSERT_TRUE(OpenDocument("jpx_lzw.pdf")); + FPDF_PAGE page = LoadPage(0); + ASSERT_TRUE(page); + + TestRenderPageBitmapWithFlags(page, 0, kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_ANNOT, kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_LCD_TEXT, kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_NO_NATIVETEXT, kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_GRAYSCALE, kGrayscaleChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_RENDER_LIMITEDIMAGECACHE, + kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_RENDER_FORCEHALFTONE, + kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_PRINTING, kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHTEXT, + kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHIMAGE, + kNormalChecksum); + TestRenderPageBitmapWithFlags(page, FPDF_RENDER_NO_SMOOTHPATH, + kNormalChecksum); + + UnloadPage(page); +} + TEST_F(FPDFViewEmbedderTest, RenderManyRectanglesWithFlags) { #if defined(_SKIA_SUPPORT_) || defined(_SKIA_SUPPORT_PATHS_) static const char kGrayscaleMD5[] = "b596ac8bbe64e7bff31888ab05e4dcf4";