add --write option to dump_record
BUG=skia: Review URL: https://codereview.chromium.org/1459823003
This commit is contained in:
parent
e416d940c6
commit
ff53af85f6
@ -9,6 +9,8 @@
|
||||
#include "LazyDecodeBitmap.h"
|
||||
#include "SkCommandLineFlags.h"
|
||||
#include "SkPicture.h"
|
||||
#include "SkPictureRecorder.h"
|
||||
#include "SkRecordDraw.h"
|
||||
#include "SkRecordOpts.h"
|
||||
#include "SkRecorder.h"
|
||||
#include "SkStream.h"
|
||||
@ -19,6 +21,7 @@ DEFINE_string(match, "", "The usual filters on file names to dump.");
|
||||
DEFINE_bool2(optimize, O, false, "Run SkRecordOptimize before dumping.");
|
||||
DEFINE_int32(tile, 1000000000, "Simulated tile size.");
|
||||
DEFINE_bool(timeWithCommand, false, "If true, print time next to command, else in first column.");
|
||||
DEFINE_string2(write, w, "", "Write the (optimized) picture to the named file.");
|
||||
|
||||
static void dump(const char* name, int w, int h, const SkRecord& record) {
|
||||
SkBitmap bitmap;
|
||||
@ -32,7 +35,6 @@ static void dump(const char* name, int w, int h, const SkRecord& record) {
|
||||
DumpRecord(record, &canvas, FLAGS_timeWithCommand);
|
||||
}
|
||||
|
||||
|
||||
int tool_main(int argc, char** argv);
|
||||
int tool_main(int argc, char** argv) {
|
||||
SkCommandLineFlags::Parse(argc, argv);
|
||||
@ -65,6 +67,20 @@ int tool_main(int argc, char** argv) {
|
||||
}
|
||||
|
||||
dump(FLAGS_skps[i], w, h, record);
|
||||
|
||||
if (FLAGS_write.count() > 0) {
|
||||
SkPictureRecorder r;
|
||||
SkRecordDraw(record,
|
||||
r.beginRecording(SkRect::MakeIWH(w, h)),
|
||||
nullptr,
|
||||
nullptr,
|
||||
0,
|
||||
nullptr,
|
||||
nullptr);
|
||||
SkAutoTUnref<SkPicture> dst(r.endRecording());
|
||||
SkFILEWStream ostream(FLAGS_write[0]);
|
||||
dst->serialize(&ostream);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user