Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Конвертирование между единицами измерения Добавлено: 23.06.05 06:52  

Автор вопроса:  Diz | Web-сайт: www.TS-Group.fatal.ru
В бейсике исть стандартные функции для конвретирования между дюймами, мм, см, пикселями??? Если нет, то может у кого-то модуль есть.... или ещё чего?

Ответить

  Ответы Всего ответов: 16  

Номер ответа: 1
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #1
Добавлено: 23.06.05 07:16
1 пиксел = Screen.TwipsPerPixelX твипов (обычно 15)
1 см = 10 мм :)
и насколько я помню, 1 дюйм = 1440 твипов.

Ответить

Номер ответа: 2
Автор ответа:
 Diz



Вопросов: 24
Ответов: 38
 Web-сайт: www.TS-Group.fatal.ru
 Профиль | | #2
Добавлено: 23.06.05 08:20

т.е. я правильно понял, что если мне надо перевести из мм в дюйм, мне надо мм перевести в пикселы, а затем пикселы умножить на (15 в твипы) и разделить на (1440) получу дюйм???
а сколько в мм пикселов?

Ответить

Номер ответа: 3
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #3 Добавлено: 23.06.05 09:40
Нисколько. Это аппаратно-зависимое отношение.

Ответить

Номер ответа: 4
Автор ответа:
 Diz



Вопросов: 24
Ответов: 38
 Web-сайт: www.TS-Group.fatal.ru
 Профиль | | #4
Добавлено: 23.06.05 09:55

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

Есть тут кто, кто работал с фотошопом и бейсиком

Ответить

Номер ответа: 5
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #5 Добавлено: 23.06.05 11:16
Есть же стандартные методы ScaleX и ScaleY у PictureBox, формы и т.п. Если надо описалово:

ScaleX, ScaleY Methods
      

Converts the value for the width or height of a Form, PictureBox, or Printer from one of the ScaleMode property's unit of measure to another. Doesn't supportnamed arguments.

Syntax

object.ScaleX (width, fromscale, toscale)

object.ScaleY (height, fromscale, toscale)

The ScaleX and ScaleY method syntaxes have these parts:

Part Description
object Optional. Anobject expression that evaluates to an object in the Applies To list. If object is omitted, the Form object with thefocus is assumed to be object.
width Required. Specifies, for object, the number of units of measure to be converted.
height Required. Specifies, for object, the number of units of measure to be converted.
fromscale Optional. A constant or value specifying the coordinate system from which width or height of object is to be converted, as described in Settings. The possible values of fromscale are the same as for the ScaleMode property, plus the new value of HiMetric.
toscale Optional. A constant or value specifying the coordinate system to which width or height of object is to be converted, as described in Settings. The possible values of toscale are the same as for the ScaleMode property, plus the new value of HiMetric.


Settings

The settings for fromscale and toscale are:

Constant Value Description
vbUser 0 User-defined: indicates that the width or height of object is set to a custom value.
vbTwips 1 Twip (1440 twips per logical inch; 567 twips per logical centimeter).
vbPoints 2 Point (72 points per logical inch).
vbPixels 3 Pixel (smallest unit of monitor or printer resolution).
vbCharacters 4 Character (horizontal = 120 twips per unit; vertical = 240 twips per unit).
vbInches 5 Inch.
vbMillimeters 6 Millimeter.
vbCentimeters 7 Centimeter.
vbHimetric 8 HiMetric. If fromscale is omitted, HiMetric is assumed as the default.
vbContainerPosition 9 Determines control's position.
vbContainerSize 10 Determines control's size.


Remarks

The ScaleX and ScaleY methods take a value (width or height), with its unit of measure specified by fromscale, and convert it to the corresponding value for the unit of measure specified by toscale.

You can also use ScaleX and ScaleY with the PaintPicture method.

Ответить

Номер ответа: 6
Автор ответа:
 Diz



Вопросов: 24
Ответов: 38
 Web-сайт: www.TS-Group.fatal.ru
 Профиль | | #6
Добавлено: 23.06.05 11:45

дело в том, что я использую их не к picturebox,
Допустим, что мне надо создать документ в фотошопе с размерами 203 на 300 мм.
вот код:

appRef.Documents.Add(203, 305, 300, "";)

но дело в том, что мне надо эти единицы передать в дюймах.
Что-то типа:

appRef.Documents.Add(ToInch(203), ToInch(305), 300, "";)

Ответить

Номер ответа: 7
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #7 Добавлено: 23.06.05 14:16
Какая разница. Используй эти же методы формы. Форма то у тебя, надеюсь, есть? :)

Ответить

Номер ответа: 8
Автор ответа:
 Федор Власенко



Вопросов: 8
Ответов: 11
 Web-сайт: fregate.org.ua
 Профиль | | #8
Добавлено: 23.06.05 15:06
Что значит на эти-же методы?
Ведь, что-бы модифицировать меню надо получить его Hmenu/

Ответить

Номер ответа: 9
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #9
Добавлено: 23.06.05 15:47
Кстати, всё можно выяснить в самом вб: поставь у формы ScaleMode дюймы и сделай ширину кнопки=1. потом переведи ScaleMode у форммы в пикселы и посмотри на ширину кнопки.

Ответить

Номер ответа: 10
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #10 Добавлено: 23.06.05 17:00
Походу не программерская задача. Пойщи таблицу переводов, а на ВБ составь что-то типа формул, это очень легко.

Ответить

Номер ответа: 11
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #11 Добавлено: 23.06.05 17:17
Блин, ну я не пойму в чем тут проблема.

Dim myWidth As Long
myWidth = 1000
MsgBox myWidth & " Pixels=" & Me.ScaleX(myWidth, vbPixels, vbMillimeters) & " Millimeters"

Вот и все. Для других единиц аналогично. Чего тут париться?

Ответить

Номер ответа: 12
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #12 Добавлено: 23.06.05 18:00
Ещё раз.
При разных разрешениях будут разные результаты.
Нельзя физические единицы сравнивать с логическими.

Ответить

Номер ответа: 13
Автор ответа:
 Comanche



Вопросов: 87
Ответов: 459
 Профиль | | #13 Добавлено: 23.06.05 23:12
......
Допустим, что мне надо создать документ в фотошопе с размерами 203 на 300 мм.
......
но дело в том, что мне надо эти единицы передать в дюймах
......

Вообще-то и миллиметры, и дюймы - это физические единицы, и связаны простым соотношением:
1 дюйм = 25,48 мм (если мне память не изменяет)
В чём тогда проблема с переводом?!

Ответить

Номер ответа: 14
Автор ответа:
 Diz



Вопросов: 24
Ответов: 38
 Web-сайт: www.TS-Group.fatal.ru
 Профиль | | #14
Добавлено: 24.06.05 07:00

написать функции для перевода не сложно, просто я не знаю констант (чему равны дюймы и т.д.) вот и решил спросить. И на всякий случай очистить совесть, может в бейсике стандартные функции для перевода есть, а я буду велосипед изобретать... вот.

P.S. а вообще отзовитесь кто нибудь, кто работал из бейсика с фотошопом...

Ответить

Номер ответа: 15
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #15
Добавлено: 24.06.05 07:13
Да, GSerg прав! хотья функции и работают, но подумайте вот над чем: что представляет собой рисунок? Правильно, двухмерную матрицу. А какая ширина и высота клетки в матрице? Единственно верный ответ - это один_пиксел, или 15_твипов и то не всегда.

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам