blob: eafcc849dfc59c010d879a2edb33c26d1b73e313 [file] [log] [blame]
// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <string>
#include <vector>
#include "third_party/abseil-cpp/absl/types/optional.h"
namespace base {
class FilePath;
} // namespace base
namespace chromeos {
// Converts `jpg_images` to a single PDF, and writes the PDF to `file_path`. If
// `rotate_alternate_pages` is true, every other page is rotated 180 degrees. If
// the DPI is specified, use it to calculate proper page and media box size.
// Returns whether the PDF was successfully saved.
bool ConvertJpgImagesToPdf(const std::vector<std::string>& jpg_images,
const base::FilePath& file_path,
bool rotate_alternate_pages,
absl::optional<int> dpi);
// Converts `jpg_images` to a single PDF, and saved the result into `output`.
bool ConvertJpgImagesToPdf(const std::vector<std::vector<uint8_t>>& jpg_images,
std::vector<uint8_t>* output);
} // namespace chromeos