Itext myImage.Alignment = Image.TEXTWRAP | Image.ALIGN_RIGHT; VB Эквивалент? - PullRequest
1 голос
/ 04 февраля 2011

Надеюсь, это действительно простой вопрос!

Я использую ITextSharp и пытаюсь установить выравнивание изображения.

В C # (как и во всех примерах) это:

myImage.Alignment = Image.TEXTWRAP | Image.ALIGN_RIGHT;

Я не могу найти эквивалент «|»в VB.

Bex

Ответы [ 3 ]

3 голосов
/ 04 февраля 2011
myImage.Alignment = Image.TEXTWRAP Or Image.ALIGN_RIGHT;

РЕДАКТИРОВАТЬ: Важно понимать, что происходит под покровом (и разница между побитовыми и логическими операторами).

У меня нет фактических двоичных значений флагов в вашем образце, но допустим, что TEXTWRAP является двоичным 0001, а ALIGN_RIGHT - двоичным 0010. Когда вы используете бит или два:

Побитовый Или

0010
0001
----
0011

Вы фактически делаете или для каждого бита. В этом случае это дает нам маску, в которой установлены биты для TEXTWRAP и ALIGN_RIGHT.

Битовая А *

Похоже, вы зацикливались на английском описании того, что вы пытаетесь сделать ... Вы хотите TEXTWRAP и ALIGN_RIGHT. Хотя это имеет смысл из словесного описания, если вы попытались выполнить поразрядно и из этих двух значений:

0010
0001
----
0000

Обратите внимание, что ни один из интересующих вас флагов не установлен.

1 голос
/ 04 февраля 2011

Это побитовый оператор C #.Просто измените его на «или» в VB.

1 голос
/ 04 февраля 2011

VB использует Or вместо | для побитового оператора OR, если я правильно помню.

Итак, это должно работать:

myImage.Alignment = Image.TEXTWRAP Or Image.ALIGN_RIGHT
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...