注意 当サイトは、Typst v0.12.0 公式ドキュメントを、日本語コミュニティが非公式に翻訳したものです。誤訳・未訳・古い情報が含まれている可能性があるため、公式ドキュメント との併用を推奨します。このサイトの内容に誤りを発見された方は、GitHubリポジトリまでご報告を頂けましたら幸いです。我々のコミュニティにご興味のある方は、ぜひ非公式Discordサーバー「くみはんクラブ」にご参加ください。
Warning: This site provides an unofficial translation of the Typst v0.12.0 documentation by the Japanese Community. Please note that there may be some inaccuracies, untranslated sections or outdated information. We highly recommend referring to the latest official documentation as well. If you find any errors in the content, please let us know through our GitHub repository. If you are interested in our community, feel free to join our unofficial Discord server, “Kumihan Club.”
Typst ドキュメント日本語版

int

A whole number.

The number can be negative, zero, or positive. As Typst uses 64 bits to store integers, integers cannot be smaller than -9223372036854775808 or larger than 9223372036854775807.

The number can also be specified as hexadecimal, octal, or binary by starting it with a zero followed by either x, o, or b.

You can convert a value to an integer with this type's constructor.

Example

#(1 + 2) \
#(2 - 5) \
#(3 + 4 < 8)

#0xff \
#0o10 \
#0b1001
Preview

コンストラクタ
If a type has a constructor, you can call it like a function to create a new value of the type.

Converts a value to an integer. Raises an error if there is an attempt to produce an integer larger than the maximum 64-bit signed integer or smaller than the minimum 64-bit signed integer.

#int(false) \
#int(true) \
#int(2.7) \
#int(decimal("3.8")) \
#(int("27") + int("4"))
Preview

value
bool int float str decimal
RequiredPositional
Positional parameters are specified in order, without names.

The value that should be converted to an integer.

定義
Functions and types and can have associated definitions. These are accessed by specifying the function or type, followed by a period, and then the definition's name.

signum

Calculates the sign of an integer.

self.signum(
) -> int
View example
#(5).signum() \
#(-5).signum() \
#(0).signum()
Preview

bit-not

Calculates the bitwise NOT of an integer.

For the purposes of this function, the operand is treated as a signed integer of 64 bits.

self.bit-not(
) -> int
View example
#4.bit-not() \
#(-1).bit-not()
Preview

bit-and

Calculates the bitwise AND between two integers.

For the purposes of this function, the operands are treated as signed integers of 64 bits.

self.bit-and() -> int
View example
#128.bit-and(192)
Preview

rhs
int
RequiredPositional
Positional parameters are specified in order, without names.

The right-hand operand of the bitwise AND.

bit-or

Calculates the bitwise OR between two integers.

For the purposes of this function, the operands are treated as signed integers of 64 bits.

self.bit-or() -> int
View example
#64.bit-or(32)
Preview

rhs
int
RequiredPositional
Positional parameters are specified in order, without names.

The right-hand operand of the bitwise OR.

bit-xor

Calculates the bitwise XOR between two integers.

For the purposes of this function, the operands are treated as signed integers of 64 bits.

self.bit-xor() -> int
View example
#64.bit-xor(96)
Preview

rhs
int
RequiredPositional
Positional parameters are specified in order, without names.

The right-hand operand of the bitwise XOR.

bit-lshift

Shifts the operand's bits to the left by the specified amount.

For the purposes of this function, the operand is treated as a signed integer of 64 bits. An error will occur if the result is too large to fit in a 64-bit integer.

self.bit-lshift() -> int
View example
#33.bit-lshift(2) \
#(-1).bit-lshift(3)
Preview

shift
int
RequiredPositional
Positional parameters are specified in order, without names.

The amount of bits to shift. Must not be negative.

bit-rshift

Shifts the operand's bits to the right by the specified amount. Performs an arithmetic shift by default (extends the sign bit to the left, such that negative numbers stay negative), but that can be changed by the logical parameter.

For the purposes of this function, the operand is treated as a signed integer of 64 bits.

self.bit-rshift() -> int
View example
#64.bit-rshift(2) \
#(-8).bit-rshift(2) \
#(-8).bit-rshift(2, logical: true)
Preview

shift
int
RequiredPositional
Positional parameters are specified in order, without names.

The amount of bits to shift. Must not be negative.

Shifts larger than 63 are allowed and will cause the return value to saturate. For non-negative numbers, the return value saturates at 0, while, for negative numbers, it saturates at -1 if logical is set to false, or 0 if it is true. This behavior is consistent with just applying this operation multiple times. Therefore, the shift will always succeed.

logical

Toggles whether a logical (unsigned) right shift should be performed instead of arithmetic right shift. If this is true, negative operands will not preserve their sign bit, and bits which appear to the left after the shift will be 0. This parameter has no effect on non-negative operands.

Default:false

from-bytes

Converts bytes to an integer.

int.from-bytes() -> int
View example
#int.from-bytes(bytes((0, 0, 0, 0, 0, 0, 0, 1))) \
#int.from-bytes(bytes((1, 0, 0, 0, 0, 0, 0, 0)), endian: "big")
Preview

bytes
bytes
RequiredPositional
Positional parameters are specified in order, without names.

The bytes that should be converted to an integer.

Must be of length at most 8 so that the result fits into a 64-bit signed integer.

endian
str

The endianness of the conversion.

Default:"little"

signed

Whether the bytes should be treated as a signed integer. If this is true and the most significant bit is set, the resulting number will negative.

Default:true

to-bytes

Converts an integer to bytes.

self.to-bytes() -> bytes
View example
#array(10000.to-bytes(endian: "big")) \
#array(10000.to-bytes(size: 4))
Preview

endian
str

The endianness of the conversion.

Default:"little"

size
int

The size in bytes of the resulting bytes (must be at least zero). If the integer is too large to fit in the specified size, the conversion will truncate the remaining bytes based on the endianness. To keep the same resulting value, if the endianness is big-endian, the truncation will happen at the rightmost bytes. Otherwise, if the endianness is little-endian, the truncation will happen at the leftmost bytes.

Be aware that if the integer is negative and the size is not enough to make the number fit, when passing the resulting bytes to int.from-bytes, the resulting number might be positive, as the most significant bit might not be set to 1.

Default:8