blob: 2bd53963eb87ca08aeb844312d640d7704940c0d [file] [log] [blame] [edit]
// Copyright 2019 PDFium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "core/fxge/scoped_font_transform.h"
#include <utility>
namespace {
void ResetTransform(FT_Face face) {
FT_Matrix matrix;
matrix.xx = 0x10000L;
matrix.xy = 0;
matrix.yx = 0;
matrix.yy = 0x10000L;
FT_Set_Transform(face, &matrix, 0);
}
} // namespace
ScopedFontTransform::ScopedFontTransform(RetainPtr<CFX_Face> face,
FT_Matrix* matrix)
: m_Face(std::move(face)) {
FT_Set_Transform(m_Face->GetRec(), matrix, 0);
}
ScopedFontTransform::~ScopedFontTransform() {
ResetTransform(m_Face->GetRec());
}