Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: third_party/woff2/src/woff2_compress.cc

Issue 954163002: Add woff2 to src/third_party (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase as third_party/ots/src/woff2.cc has changed Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/woff2/src/woff2_common.h ('k') | third_party/woff2/src/woff2_dec.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/woff2/src/woff2_compress.cc
diff --git a/third_party/woff2/src/woff2_compress.cc b/third_party/woff2/src/woff2_compress.cc
new file mode 100644
index 0000000000000000000000000000000000000000..057566f8b8c8327cb26c9122fc0f38509eb6afb9
--- /dev/null
+++ b/third_party/woff2/src/woff2_compress.cc
@@ -0,0 +1,52 @@
+// Copyright 2013 Google Inc. All Rights Reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// A commandline tool for compressing ttf format files to woff2.
+
+#include <string>
+
+#include "file.h"
+#include "./woff2_enc.h"
+
+
+int main(int argc, char **argv) {
+ using std::string;
+
+ if (argc != 2) {
+ fprintf(stderr, "One argument, the input filename, must be provided.\n");
+ return 1;
+ }
+
+ string filename(argv[1]);
+ string outfilename = filename.substr(0, filename.find_last_of(".")) + ".woff2";
+ fprintf(stdout, "Processing %s => %s\n",
+ filename.c_str(), outfilename.c_str());
+ string input = woff2::GetFileContent(filename);
+
+ const uint8_t* input_data = reinterpret_cast<const uint8_t*>(input.data());
+ size_t output_size = woff2::MaxWOFF2CompressedSize(input_data, input.size());
+ string output(output_size, 0);
+ uint8_t* output_data = reinterpret_cast<uint8_t*>(&output[0]);
+
+ if (!woff2::ConvertTTFToWOFF2(input_data, input.size(),
+ output_data, &output_size)) {
+ fprintf(stderr, "Compression failed.\n");
+ return 1;
+ }
+ output.resize(output_size);
+
+ woff2::SetFileContents(outfilename, output);
+
+ return 0;
+}
« no previous file with comments | « third_party/woff2/src/woff2_common.h ('k') | third_party/woff2/src/woff2_dec.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698