Position
Module @netwiv/api/dpi · Kind Class
import { Position } from '@netwiv/api/dpi';A position represented either in physical or in logical pixels.
This type is basically a union type of {@linkcode LogicalSize} and {@linkcode PhysicalSize}
but comes in handy when using tauri::Position in Rust as an argument to a command, as this class
automatically serializes into a valid format so it can be deserialized correctly into tauri::Position
So instead of
import { invoke } from '@netwiv/api/core';import { LogicalPosition, PhysicalPosition } from '@netwiv/api/dpi';
const position: LogicalPosition | PhysicalPosition = someFunction(); // where someFunction returns either LogicalPosition or PhysicalPositionconst validPosition = position instanceof LogicalPosition ? { Logical: { x: position.x, y: position.y } } : { Physical: { x: position.x, y: position.y } }await invoke("do_something_with_position", { position: validPosition });You can just use {@linkcode Position}
import { invoke } from '@netwiv/api/core';import { LogicalPosition, PhysicalPosition, Position } from '@netwiv/api/dpi';
const position: LogicalPosition | PhysicalPosition = someFunction(); // where someFunction returns either LogicalPosition or PhysicalPositionconst validPosition = new Position(position);await invoke("do_something_with_position", { position: validPosition });Constructor
Section titled “Constructor”new Position(position: LogicalPosition | PhysicalPosition)Instance members
Section titled “Instance members”position
Section titled “position”position: LogicalPosition | PhysicalPositiontoJSON
Section titled “toJSON”toJSON(): { [x: string]: { x: number; y: number; }; }toLogical
Section titled “toLogical”toLogical(scaleFactor: number): LogicalPositiontoPhysical
Section titled “toPhysical”toPhysical(scaleFactor: number): PhysicalPositionUpstream since 2.1.0
Descriptions come from the pinned @tauri-apps/api@2.11.1 declarations (MIT OR Apache-2.0); imports are shown with @netwiv/api paths.