Подтвердить что ты не робот

Пиксель до сантиметра?

Я просто хочу знать, является ли элемент пикселя чем-то, что не меняется, и если мы можем конвертировать из пикселей, чтобы сказать сантиметры?

4b9b3361

Ответ 1

Как и этот вопрос, который спрашивает о точках вместо сантиметров. Есть 72 точки на дюйм и 2,54 см на дюйм, поэтому просто замените 2,54 на 72 в ответе на этот вопрос. Я приведу и исправлю свой ответ здесь:

Есть 2,54 сантиметра на дюйм; если достаточно принять 96 пикселей на дюйм, формула довольно проста:

сантиметры = пиксели * 2,54/96

Существует способ получить настроенные пиксели на дюйм вашего дисплея для Microsoft Windows под названием GetDeviceCaps. В Microsoft есть руководство под названием "Разработка приложений DPI-Aware", найдите раздел "Создание шрифтов DPI-Aware".

Ответ 2

Преобразование пикселей в сантиметры зависит от DPI (точек на дюйм) носителя, отображающего изображение, то есть монитора, лазерного принтера и т.д.

http://wiki.answers.com/Q/How_do_you_convert_pixels_into_centimeters

Ответ 3

Я собираюсь выйти на конечность и просто догадываюсь, что вы хотите показывать вещи пользователю на своем мониторе, масштабируясь, чтобы быть очень близким к его реальному размеру жизни.

ЕСЛИ это так, я бы рекомендовал либо отображать ваши предметы рядом с предметами реальной жизни (кредитные карты, долларовые купюры, попсовые банки и т.д.), либо даже лучше, позволить пользователю удерживать что-то на экране, как кредит карточная или долларовая купюра или линейка. Затем вы можете масштабировать слайдер или что-то подобное, чтобы соответствовать ширине или высоте этого объекта.

Держа кредитную карту, что-то с относительно известной высотой и шириной, вплоть до экрана, вы можете легко определить отношение пикселей к дюймам и использовать это в своем сердце.

Wiki говорит

Большинство кредитных карт выдаются местными банками или кредитными союзами и являются формой и размером, указанными стандартом ISO/IEC 7810 как ID-1 (85.60 × 53.98 мм)

Используя mspaint, моя кредитная карта имеет ровно 212 пикселей, то есть 53,98 мм /212 пикселей = 3,92 пикселя на мм. Умножьте на 10 и на 39,2 пикселя на см.

Вы можете ЛЕГКО выполнить это программно через javascript, С#, flash, все, что вам нужно.

Ответ 4

Вы можете конвертировать из пикселей в сантиметры, но это не последовательное преобразование. Это будет зависеть от размера и разрешения отображаемого устройства. Определение пикселя не изменится, но размер пикселя будет меняться на разных устройствах отображения.

Ответ 5

Нет, разные среды и мониторы имеют разную плотность пикселей.

Например, монитор рабочего стола может иметь 75 пикселей на дюйм, тогда как печать может выводиться на 300.

Ниже приведен список дисплеев по плотности пикселей

Ответ 6

В Adobe Illustrator CS3:(, цифра, которую я получаю, составляет 1 см = 28.347 пикселей. Примечание. Я использую iMac 7., который имеет разрешение 102 пикселя на дюйм, 40 ppcm в соответствии со ссылкой http://en.wikipedia.org/wiki/List_of_displays_by_pixel_density, предоставленный rebo.

Я создал документ Adobe Illustrator CS3 с использованием javascript для проверки значения 1 см = 28.347 пикселей и идеально подходит.

Я знаю, что этот вопрос очень старый, но я пытался найти ответ на него и решил поделиться своими выводами.

Привет

Ответ 7

Размер пикселей изменяется в зависимости от устройства отображения.

Следующий "найденный" код использует api-вызовы для определения плотности пикселей Получить экран DPI в .NET

( "Найдено", как в я googled, но не пробовал)

Ответ 8

Насколько я понимаю, PIXEL:

Элемент изображения

Таким образом, это зависит от двух вещей:

(a) Разрешение (b) Физический размер экрана

Таким образом, если вы делите размер экрана по разрешению, это должно дать вам CM на пиксель.

Ответ 9

Пиксельная система состоит в том, что это зависит от вашего разрешения экрана. Ну, во-первых, вы должны получить dpi (плотность пикселей на дюйм) вашего экрана. Например, ваш экран dpi 96;

1 см = 37,795276F пикселей в 96 точек на дюйм.

37,795276F/96F = 0,03937007F, что составляет каждый пиксель в 1dpi.

Теперь вы можете сделать его адаптированным к вашему экрану, получив текущее разрешение экрана и умножив его на 0,03937007F. тогда у вас есть каждый сантиметр в вашем желании точек на дюйм (разрешение экрана)

давайте установим сценарий.

Я хочу сделать метод, который получает CM и возвращает основание пикселей на экране Dpi;

public float CentimeterToPixel(int valueCM, float dpi)
{
   return 0.03937007F * dpi * valueCM;
}

если вы хотите сделать его более точным, вы должны приблизиться к dpiX и dpiY.

Например, в С# winforms Вы можете добавить объект Graphics из System.Drawing и System.Drawing.Drawing2D, затем получить его значение dpiX & dpiY и спроектировать свою область на его основе, чтобы иметь более точный расчет (в некоторых случаях разрешение по горизонтали отличается от по вертикали). Смотрите код ниже.

using System;
using System.Windows.Forms;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;

namespace MyApp
{
    static class MyAppClass
    {
        private static Bitmap bmp = new Bitmap(1, 1);// a simple bitmap that automaticaly created base on current screen resolution
        private static Graphics graphic = Graphics.FromImage(bmp);

        public static float CentimeterToPixelWidth(int valueCM)
        {
           return 0.03937007F * graphic.DpiX * valueCM;
        }

        public static float CentimeterToPixelHeight(int valueCM)
        {
           return 0.03937007F * graphic.DpiY * valueCM;
        }
    }

}

Хочу помочь тебе, Гейдар.

Ответ 10

Разве разрешение не меняет точек на дюйм? Потому что, как и в случае с более высоким разрешением, вам нужны меньшие точки.