Add a feature flag for switching to HarfBuzz as PDF subsetter

Add a feature flag, "printing::features::kHarfBuzzPDFSubsetter", and the
associated UI chrome://flags for switching between the HarfBuzz and
sftnly PDF font subsetters. The flag does not do anything yet.

Bug: 953050
Change-Id: I888d2a8bf7275fb6aaf83efb9488abe1bc93e653
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1649070
Reviewed-by: Lei Zhang <[email protected]>
Commit-Queue: Daniel Hosseinian <[email protected]>
Cr-Commit-Position: refs/heads/master@{#668221}
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index efdcad4c..77bce9b1 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -180,6 +180,10 @@
 #include "pdf/pdf_features.h"
 #endif
 
+#if BUILDFLAG(ENABLE_PRINTING)
+#include "printing/printing_features.h"
+#endif
+
 #if defined(USE_OZONE)
 #include "ui/ozone/public/ozone_switches.h"
 #endif  // USE_OZONE
@@ -2914,6 +2918,10 @@
      flag_descriptions::kUsePdfCompositorServiceName,
      flag_descriptions::kUsePdfCompositorServiceDescription, kOsAll,
      FEATURE_VALUE_TYPE(printing::features::kUsePdfCompositorServiceForPrint)},
+
+    {"harfbuzz-pdf-subsetter", flag_descriptions::kHarfBuzzPDFSubsetterName,
+     flag_descriptions::kHarfBuzzPDFSubsetterDescription, kOsAll,
+     FEATURE_VALUE_TYPE(printing::features::kHarfBuzzPDFSubsetter)},
 #endif
 
     {"autofill-profile-client-validation",