Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
cfx_cssnumbervalue.cpp
Go to the documentation of this file.
1// Copyright 2017 The PDFium Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7#include "core/fxcrt/css/cfx_cssnumbervalue.h"
8
9#include <math.h>
10
11CFX_CSSNumberValue::CFX_CSSNumberValue(CFX_CSSNumber number)
12 : CFX_CSSValue(PrimitiveType::kNumber), number_(number) {
13 if (number_.unit == CFX_CSSNumber::Unit::kNumber &&
14 fabs(number_.value) < 0.001f) {
15 number_.value = 0.0f;
16 }
17}
18
19CFX_CSSNumberValue::~CFX_CSSNumberValue() = default;
20
21float CFX_CSSNumberValue::Apply(float percentBase) const {
22 switch (number_.unit) {
25 return number_.value * 72 / 96;
28 return number_.value * percentBase;
30 return number_.value * percentBase / 100.0f;
32 return number_.value * 28.3464f;
34 return number_.value * 2.8346f;
36 return number_.value * 72.0f;
38 return number_.value / 12.0f;
40 return number_.value;
41 }
42}
CFX_CSSNumberValue(CFX_CSSNumber number)
float Apply(float percentBase) const
~CFX_CSSNumberValue() override
CFX_CSSValue(PrimitiveType type)